1 // Specific definitions for mingw32 platform -*- C++ -*-
3 // Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
5 // This file is part of the GNU ISO C++ Library. This library is free
6 // software; you can redistribute it and/or modify it under the
7 // terms of the GNU General Public License as published by the
8 // Free Software Foundation; either version 3, or (at your option)
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // Under Section 7 of GPL version 3, you are granted additional
17 // permissions described in the GCC Runtime Library Exception, version
18 // 3.1, as published by the Free Software Foundation.
20 // You should have received a copy of the GNU General Public License and
21 // a copy of the GCC Runtime Library Exception along with this program;
22 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23 // <http://www.gnu.org/licenses/>.
25 /** @file bits/error_constants.h
26 * This is an internal header file, included by other library headers.
27 * Do not attempt to use it directly. @headername{system_error}
30 #ifndef _GLIBCXX_ERROR_CONSTANTS
31 # define _GLIBCXX_ERROR_CONSTANTS
33 #include <bits/c++config.h>
37 namespace std _GLIBCXX_VISIBILITY(default)
39 _GLIBCXX_BEGIN_NAMESPACE_VERSION
41 // Most of the commented-out error codes are socket-related and could be
42 // replaced by Winsock WSA-prefixed equivalents.
45 // address_family_not_supported = EAFNOSUPPORT,
46 // address_in_use = EADDRINUSE,
47 // address_not_available = EADDRNOTAVAIL,
48 // already_connected = EISCONN,
49 argument_list_too_long = E2BIG,
50 argument_out_of_domain = EDOM,
52 bad_file_descriptor = EBADF,
53 // bad_message = EBADMSG,
55 // connection_aborted = ECONNABORTED,
56 // connection_already_in_progress = EALREADY,
57 // connection_refused = ECONNREFUSED,
58 // connection_reset = ECONNRESET,
59 // cross_device_link = EXDEV,
60 // destination_address_required = EDESTADDRREQ,
61 device_or_resource_busy = EBUSY,
62 directory_not_empty = ENOTEMPTY,
63 executable_format_error = ENOEXEC,
65 file_too_large = EFBIG,
66 filename_too_long = ENAMETOOLONG,
67 function_not_supported = ENOSYS,
68 // host_unreachable = EHOSTUNREACH,
69 // identifier_removed = EIDRM,
70 illegal_byte_sequence = EILSEQ,
71 inappropriate_io_control_operation = ENOTTY,
73 invalid_argument = EINVAL,
74 invalid_seek = ESPIPE,
76 is_a_directory = EISDIR,
77 // message_size = EMSGSIZE,
78 // network_down = ENETDOWN,
79 // network_reset = ENETRESET,
80 // network_unreachable = ENETUNREACH,
81 // no_buffer_space = ENOBUFS,
82 // no_child_process = ECHILD,
84 no_lock_available = ENOLCK,
85 // no_message_available = ENODATA,
86 // no_message = ENOMSG,
87 // no_protocol_option = ENOPROTOOPT,
88 // no_space_on_device = ENOSPC,
89 // no_stream_resources = ENOSR,
90 no_such_device_or_address = ENXIO,
91 no_such_device = ENODEV,
92 no_such_file_or_directory = ENOENT,
93 no_such_process = ESRCH,
94 not_a_directory = ENOTDIR,
95 // not_a_socket = ENOTSOCK,
96 // not_a_stream = ENOSTR,
97 // not_connected = ENOTCONN,
98 not_enough_memory = ENOMEM,
99 // not_supported = ENOTSUP,
100 // operation_canceled = ECANCELED,
101 // operation_in_progress = EINPROGRESS,
102 // operation_not_permitted = EPERM,
103 // operation_not_supported = EOPNOTSUPP,
104 // operation_would_block = EWOULDBLOCK,
105 // owner_dead = EOWNERDEAD,
106 permission_denied = EACCES,
107 // protocol_error = EPROTO,
108 // protocol_not_supported = EPROTONOSUPPORT,
109 read_only_file_system = EROFS,
110 resource_deadlock_would_occur = EDEADLK,
111 resource_unavailable_try_again = EAGAIN,
112 result_out_of_range = ERANGE,
113 // state_not_recoverable = ENOTRECOVERABLE,
114 // stream_timeout = ETIME,
115 // text_file_busy = ETXTBSY,
116 // timed_out = ETIMEDOUT,
117 too_many_files_open_in_system = ENFILE,
118 too_many_files_open = EMFILE,
119 too_many_links = EMLINK
120 // too_many_symbolic_link_levels = ELOOP,
121 // value_too_large = EOVERFLOW,
122 // wrong_protocol_type = EPROTOTYPE
125 _GLIBCXX_END_NAMESPACE_VERSION